1. Field of the Invention
The present invention relates generally to communication systems and more specifically to a communication system and method for executing an application program that does not specify a predetermined communication parameter such as source port number.
2. Description of the Related Art
An application execution environment is composed of a CPU, an Operating System (OS) and middleware to execute an application program, such as client's software, server's software and peer-to-peer software. In a prior art application execution environment that executes an application program for internet communication, it is necessary to map a source port number to TCP/IP or UDP/IP communication control data that is uniquely associated with the application program before communication control (bandwidth allocation, data transfer and communication shutoff) is performed. Some application programs explicitly specify the source port number to the application execution environment before a TCP/IP or UDP/IP communication is established. If such an application program is executed in combination with one or more other application programs, an undesirable situation can occur as a result of a single source port number being coincidentally used by more than one application program. To avoid this it is recommended that application programs be written not to specify a source port number. As a result, if communication control such as “firewall” is performed using an application program that does not specify a source port number, the source port number must be dynamically assigned, as described in Japanese Patent Publication 2004-78507. However, the TCP/UDP communication control data cannot be maintained in the application execution environment for all application programs since the communication environment for all application programs since the communication control data is uniquely associated with each application program and since the source port number is not determined beforehand. One solution would be to write an application program that specifies a source port number at the instant it issues a communication request. However, writing such an application is a difficult task.